﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using QuanLyRapChieuPhim.BUS;
using QuanLyRapChieuPhim.DTO;

namespace QuanLyRapChieuPhim.GUI
{
    public partial class uscThemCaChieu : UserControl
    {
        private int Ma = -1;

        public uscThemCaChieu()
        {
            InitializeComponent();
        }

        private void uscThemCaChieu_Load(object sender, EventArgs e)
        {
            Ma = int.Parse(Tag.ToString());
            LoadDefault();
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            Ma = 0;
            if (!Check())
                return;
            CaChieuBUS BUS = new CaChieuBUS();
            CaChieuDTO DTO = new CaChieuDTO(0, txtTenCaChieu.Text, TimeSpan.Parse(dtpThoiGianBD.Text), TimeSpan.Parse(dtpThoiGianKT.Text));
            if (BUS.Add(DTO))
            {
                MessageBox.Show("Thêm thành công.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.None);
                return;
            }
            MessageBox.Show("Thêm thất bại.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.None);

        }

        private void btnCapNhap_Click(object sender, EventArgs e)
        {
            Ma = int.Parse(Tag.ToString());
            if (!Check())
                return;
            CaChieuBUS BUS = new CaChieuBUS();
            CaChieuDTO DTO = new CaChieuDTO(Ma, txtTenCaChieu.Text, TimeSpan.Parse(dtpThoiGianBD.Text), TimeSpan.Parse(dtpThoiGianKT.Text));
            if (BUS.Update(DTO))
            {
                MessageBox.Show("Cập nhật thành công.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.None);
                return;
            }
            MessageBox.Show("Cập nhật thất bại.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.None);

        }

        private void btnDienLai_Click(object sender, EventArgs e)
        {
            LoadDefault();
        }

        void LoadDefault()
        {
            CaChieuBUS BUS = new CaChieuBUS();
            CaChieuDTO DTO = new CaChieuDTO();
            DTO = BUS.GetFromId(Ma);
            txtTenCaChieu.Text = DTO.TenCaChieu;
            dtpThoiGianBD.Text = DTO.ThoiGianBatDau.ToString();
            dtpThoiGianKT.Text = DTO.ThoiGianKetThuc.ToString();
        }
        bool Check()
        {
            lbsao01.Visible = false;
            lbThongBao.Visible = false;
            lbThongBao1.Visible = false;

            if (txtTenCaChieu.Text == "")
            {
                lbsao01.Visible = true;
                txtTenCaChieu.Focus();
                return false;
            }
            else
            {
                int cop = DateTime.Compare(dtpThoiGianBD.Value, dtpThoiGianKT.Value);
                if (cop >= 0)
                {
                    lbThongBao.Visible = true;
                    dtpThoiGianBD.Focus();
                    return false;
                }
            }
            RapBUS BUS = new RapBUS();
            if (BUS.CheckExists(Ma,txtTenCaChieu.Text))
            {
                lbThongBao1.Visible = true;
                txtTenCaChieu.Focus();
                return false;
            }
            return true;
        }

    }
}
